import java.util.Arrays;
//给定一个数组 nums，编写一个函数将所有 0 移动到数组的末尾，同时保持非零元素的相对顺序。
public class 移动零 {

    public  void moveZeroes(int[] nums) {
        //设置一个index，表示非零数的个数
        int index=0;
        for (int i = 0; i < nums.length; i++) {
            if (nums[i]!=0){
                nums[index++]=nums[i];
            }
        }
        for (int i = index; i <nums.length; i++) {
            nums[i]=0;
        }
    }
    public void moveZeroes1(int[] nums) {
        int i=0,j=0;
        int n = nums.length;
        while (j<n){
            if (nums[j]!=0){
                swap(nums,i,j);
                i++;
            }
            j++;
        }
    }
    private void swap(int[] nums, int i, int j) {
        int temp = nums[i];
        nums[i] = nums[j];
        nums[j] = temp;
    }

}
